A virtual machine (VM) is a software implementation of a machine (e.g., a computer) that executes programs like a physical machine. One or more VMs may be supported by a host machine, which may also provide data caching for the VMs.
Certain virtualization technologies allow VMs to be moved from one host machine to another. While such technologies are useful, maintaining cache coherence for the VMs is challenging and therein lies the need to provide a method and system to provide data management for cache systems supporting virtual machines.